package com.soul.sys.bean.po;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.soul.common.bean.comm.BasePo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

/**
 * <p>
 * 菜单
 * </p>
 * @author sws
 * @since 2023-09-01 22:40:38
 */
@Data
@Accessors(chain = true)
@TableName("soul_menu")
@ApiModel(value = "MenuPo对象", description = "菜单")
public class MenuPo extends BasePo {

    private static final long serialVersionUID = 1L;

    /**
     * 父节点Id
     */
    @ApiModelProperty("父节点Id")
    @TableField("parent_id")
    private Long parentId;

    /**
     * 菜单代码
     */
    @ApiModelProperty("菜单代码")
    @TableField("menu_code")
    private String menuCode;

    /**
     * 简码
     */
    @ApiModelProperty("简码")
    @TableField("short_code")
    private String shortCode;

    /**
     * 菜单名称
     */
    @ApiModelProperty("菜单名称")
    @TableField("menu_name")
    private String menuName;

    /**
     * 菜单类型
     */
    @ApiModelProperty("菜单类型")
    @TableField("menu_type")
    private String menuType;

    /**
     * 图标
     */
    @ApiModelProperty("图标")
    @TableField("icon")
    private String icon;

    /**
     * 地址
     */
    @ApiModelProperty("地址")
    @TableField("url")
    private String url;

    /**
     * 路由地址
     */
    @ApiModelProperty("路由地址")
    @TableField("component")
    private String component;

    /**
     * 是否隐藏 1/0
     */
    @ApiModelProperty("是否隐藏")
    @TableField("hidden")
    private Integer hidden;

    /**
     * 是否删除 0否 1是
     */
    @TableField("is_del")
    @TableLogic
    protected Byte isDel;
}